package hu.u_szeged.inf.ovrt.filelister.core.workflow;

import hu.u_szeged.inf.ovrt.filelister.commands.Command;
import hu.u_szeged.inf.ovrt.filelister.core.exception.ModuleNotFoundException;

/**
 * CommandFactory interface.
 *
 */
public interface CommandFactory {

    /**
     * Returns a command object by command string.
     *
     * @param commandStr command string.
     * @return {@link Command}
     * @throws ModuleNotFoundException if a module not found.
     */
    Command getCommand(String commandStr) throws ModuleNotFoundException;
}
